# 进城之间数据隔离
# 进程之间通信(IPC) Inter Process communication
    # 基于文件 :同一台机器上的多个进程之间通信
        # Queue 队列
            # 基于socket的文件级别的通信来完成数据传递的
    # 基于网络 :同一台机器或者多台机器上的多进程间通信
        # 第三方工具(消息中间件)
            # memcache
            # redis
            # rabbitmq
            # kafka

import socket
from multiprocessing import Queue,Process

def pro(q):
    for i in range(5):
        print('-->',q.get())


def son(q):
    for i in range(10):
        q.put('hello%s'%i)

if __name__ == '__main__':
    q=Queue()
    p=Process(target=son,args=(q,))
    p.start()
    p=Process(target=pro,args=(q,))
    p.start()
    p.join()




# import socket
# from multiprocessing import Queue,Process
#
# def son(q):
#     # q.put('hello')
#     q.append(6)
# if __name__ == '__main__':
#     q=[]#不是共享的,
#     p=Process(target=son,args=(q,))
#     p.start()
#     p.join()
#     print(q)#[]























